<?php
/**
* Consulta el Inp
*
* @file cosultarInp.php
* @author DYR Technologies
* @version V 1.1
* @date Wed Oct 03 2007
 *
 *  Part of the CEFIRO dynamic web framework project
 *
 *  Copyright (C) 2007  Dyr technologies http://dyrtech.com.ve
 *
 *  This program is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
*
*/

define("ZAJAX_PATH",substr(__FILE__,0,strpos(__FILE__,"cefiro"))."cefiro/lib/zajax/zajax.php");
if (!defined('CEFIRO')) define("CEFIRO",substr(__FILE__,0,strpos(__FILE__,"cefiro"))."cefiro/widgets/cefiro.php");
require_once(CEFIRO);
define("GRID_IMG",FULL_URL."grid/img/");

/**
* Funciones para buscar
*/
function buscarInp($Args){
	/**
	 * @brief Args[0] = Inp: La entrada que deseo recuperar de la BD
	 */
	if ($Args[0] == NULL || $Args[0] == ""){
		return processResponse();
	}

	/**
	 * @brief Args[1] = El nombre del grid sobre el que se está trabajando
	 */
	addScript($Args[1].".clearAll()");


	/**
	 * @brief Args[2] = Consulta en la BD
	 */
	/**
	 * @brief Args[3] = Ambito de la funcion de la consulta
	 */
	/**
	 * @brief Arg[5], Args[6], Args[7] y Args[8] = Campos que queremos recuperar de la Base de Datos, el "5" es el identificador
	 */

require_once("utils.php");
$rep = str_replace('\\','/',ZAJAX_PATH); // HACK: to make it work in MSW
$rep = get_rel(str_replace(':/',':\\',(String)$Args[3]),str_replace(':/',':\\',$rep));
define("SEARCHINGGRID",$rep);
require_once(SEARCHINGGRID);

/**
 * @brief Se crea un arreglo con los argumentos extras de la funcion de busqueda, SIEMPRE empiezan en el 13 y el 0 es el campo de texto del searching grid
 */
$fct_args = array();
$fct_args[0] = $Args[0];
/**
 * @brief $i es el indice en los Argumentos pasados, $fi es el indice en el arreglo que se quiere crear con los argumentos extras
 */
for($fi=1, $i = 13; $i<sizeof($Args); $fi++,$i++)
	$fct_args[$fi] = $Args[$i];


$query_fct = (String)$Args[2];
$resultado=$query_fct($fct_args);

	if (count($resultado) > 0){
		foreach ($resultado as $array){
			$id=$array[$Args[5]];
			if(isset($Args[6]))
				$db1 = $array[''.$Args[6].''];
			if(isset($Args[7]))
				$db2 = $array[''.$Args[7].''];
			if(isset($Args[8]))
				$db3 = $array[''.$Args[8].''];

$img=GRID_IMG."seleccionar.gif@asignar(".$Args[12].",$id,".$Args[1].",\"".$Args[4]."\",\"".$Args[9]."\",\"".$Args[10]."\");ocultarTablaBuscar(\"".$Args[4]."\",\"".$Args[11]."\");@Seleccionar";
			addScript("if(!".$Args[1].".isItemExists('$id')){
						".$Args[1].".addRow('$id','$img|$db1|$db2|$db3',0);
						".$Args[1].".selectRow('0')
						}"
					);
			$msg="";
		}
	}
	else{
		$msg="No se ha encontrado: '".$Args[0]."'";
	}
	addAssign("mensaje","innerHTML",$msg);

	return processResponse();
}


?>